import Vue from "vue"
import VueScroll from "vuescroll"

Vue.use(VueScroll, {
	ops: {
		vuescroll: {
			// 选择一个模式, native 或者 slide.
			detectResize: "native",
			// 如果父容器不是固定高度，请设置为 number , 否则保持默认的percent即可
			sizeStrategy: "percent",
			// 是否检测内容尺寸发生变化
			detectResize: true,
			// 滚轮滚动一段距离所需时间
			wheelScrollDuration: 600,
			// 是否使滚轮方向相反
			wheelDirectionReverse: false,
		},
		scrollPanel: {
			// 只要组件mounted之后 y 方向自动滚动的距离。 例如 100 or 10%
			initialScrollY: false,
			// 只要组件mounted之后 x 方向自动滚动的距离。 例如 100 or 10%
			initialScrollX: false,
			// 是否启用 x 方向上的滚动
			scrollingX: true,
			// 是否启用 y 方向上的滚动
			scrollingY: true,
			// 多长时间内完成一次滚动。 数值越小滚动的速度越快
			speed: 600,
			// 滚动动画
			easing: "easeOutQuad",
			// 原生滚动条的位置
			verticalNativeBarPos: "right",
			// 这是滚动条最大高度,内容高度小于 maxHeight 时高度自适应，超出的话出现滚动条
			maxHeight: undefined,
			// 这是滚动条最大宽度,内容宽度小于 maxHeight 时宽度自适应，超出的话出现滚动条
			maxWidth: undefined,
		},
		rail: {
			// 轨道的背景色
			background: "#01a99a",
			// 轨道的透明度
			opacity: 0,
			// 轨道的尺寸
			size: "4px",
			// 是否指定轨道的 borderRadius
			specifyBorderRadius: false,
			// 轨道距 x 和 y 轴两端的距离
			gutterOfEnds: "2px",
			// 距离容器的距离
			gutterOfSide: "2px",
			// 是否即使 bar 不存在的情况下也保持显示
			keepShow: false,
			// 轨道的边框
			border: "none",
		},
		bar: {
			// 在鼠标离开容器后多长时间隐藏滚动条
			showDelay: 500,
			// 是否只在滚动时显示 bar
			onlyShowBarOnScroll: false,
			// 滚动条是否保持显示
			keepShow: false,
			// 滚动条背景色
			background: "#00000099",
			// 滚动条透明度
			opacity: 0.4,
			// 是否指定滚动条的 borderRadius， 如果不那么和轨道的保持一致
			specifyBorderRadius: false,
			// 为 bar 设置一个最小尺寸, 从 0 到 1. 如 0.3, 代表 30%
			minSize: 0.1,
			// bar 的尺寸
			size: "6px",
			// 是否禁用滚动条
			disable: false,
		},
	},
	name: "vueScroll",
})
